草庐IT

php - 从 Controller 到 View

全部标签

ruby-on-rails - 在哪里放置 Rails Controller 的 Ruby 辅助方法?

我有某些(或所有)Controller需要的一些Ruby方法。我尝试将它们放在/app/helpers/application_helper.rb中。我已经将其用于View中使用的方法。但是Controller看不到这些方法。我应该把它们放在另一个地方还是我需要以不同的方式访问这些辅助方法?使用最新的稳定版Rails。 最佳答案 您应该在ApplicationController中定义该方法。 关于ruby-on-rails-在哪里放置RailsController的Ruby辅助方法?,

ruby-on-rails - 在 Controller 中运行 rake 任务

我想在我的Controller中运行一个rake任务。有什么办法吗? 最佳答案 我同意ddfreynee的观点,但如果您知道自己需要什么,代码可以如下所示:require'rake'Rake::Task.clear#necessarytoavoidtasksbeingloadedseveraltimesindevmodeSample::Application.load_tasks#providingyourapplicationnameis'sample'classRakeController您可以改为在初始化程序中要求'rake'

ruby-on-rails - 尝试从 Rails Controller 调用辅助方法时出现 NoMethodError

当我尝试从我的Controller类之一访问在我的帮助程序模块之一中定义的方法时,我收到了一个NoMethodError。我的Rails应用程序使用helper类方法和:all符号,如下所示:classApplicationController我的理解是,这应该使我的所有Controller类自动包含app/helpers目录中的所有帮助程序模块,因此将所有方法混合到Controller中。这是正确的吗?如果我在Controller中显式包含辅助模块,那么一切正常。 最佳答案 使用模板引擎中已经包含的辅助方法:Rails2:使用@t

ruby-on-rails - 在 Ruby on Rails 中重用 Controller 之间代码的最佳实践

我想分享一些Controller方法。在ruby​​onrails中执行此操作的最佳做​​法是什么?我应该创建一个我的Controller扩展的抽象类,还是应该创建模块并将其添加到每个Controller中?以下是我想分享的Controller方法:defdriving_directions@address_to=params[:address_to]@address_from=params[:address_from]@map_center=params[:map_center_start]#ifwewerenotgivenacenterpointtostartourmapon#le

ruby-on-rails - 为什么所有 Rails 助手都可用于所有 View ,一直?有没有办法禁用它?

为什么我可以在另一个Controller的View中访问一个Controller的辅助方法?有没有办法在不破解/修补Rails的情况下禁用它? 最佳答案 @GeorgeSchreiber的方法在Rails3.1中不起作用;代码发生了重大变化。但是,现在有一种更好的方法可以在Rails3.1(希望是更高版本)中禁用此功能。在您的config/application.rb中,添加这一行:config.action_controller.include_all_helpers=false这将preventApplicationContro

ruby-on-rails - RSpec Controller 测试 - 空白 response.body

在使用RSpec测试我的Controller时,我遇到了一个问题-response.body调用总是返回一个空字符串。在浏览器中一切都正确呈现,cucumber功能测试似乎正确,但RSpec每次都失败。对响应对象的其他期望,例如response.shouldrender_template('index')没有任何问题地通过。你们以前遇到过这个问题吗?也许可以通过其他方式获取响应html?至于版本,Rails2.1.0,RSpec1.2.7。 最佳答案 默认情况下,rspec-rails入侵Rails以阻止它实际渲染View模板。您应

ruby-on-rails - Rails 模型、 View 、 Controller 和助手 : what goes where?

在RubyonRails开发(或一般的MVC)中,我应该遵循什么快速规则来放置逻辑。请肯定地回答-Doputthishere,而不是Don'tputthatthere。 最佳答案 MVCController:将代码放在这里,确定用户想要什么,决定给他们什么,确定他们是否登录,他们是否应该看到某些数据等.最后,Controller查看请求并计算出要显示哪些数据(模型)以及要呈现哪些View。如果您怀疑代码是否应该放在Controller中,那么它可能不应该。保留您的Controllerskinny.View:View应该只包含显示数据

javascript - 在哪一点上获取 View 所依赖的主干模型?

我似乎经常遇到这样的情况:我正在渲染一个View,但该View所依赖的模型尚未加载。大多数情况下,我只有从URL中获取的模型ID,例如对于假设的市场应用程序,用户使用该URL登陆该应用程序:http://example.org/#/products/product0在我的ProductView,我创建了一个ProductModel并设置其ID,product0然后我fetch().我用占位符渲染一次,当获取完成时,我重新渲染。但我希望有更好的方法。在渲染任何东西之前等待模型加载感觉没有响应。重新渲染会导致闪烁,并且在各处添加“正在加载...请稍候”或微调器会使View模板变得非常复杂(

javascript - 如何从 Controller 调用 Angular 服务方法?

我对Angular有点陌生。我已经构建了“员工搜索”服务模块。这是代码...//Serviceforemployeesearchapp.service('employeeSearchService',function($http,resourceServerAddress){this.empList=[];//Methodforclearingsearchemployeelistthis.clearEmpList=function(){this.empList=[];}//Methodforfetchingemployeesearchlistthis.fetchEmpList=func

javascript - 使用 View 框时如何阻止路径在 D3 中模糊/消失?

我正在使用D3库创建一些图表。它们被放置在一个View框中(参见下面“输出”下的片段)。View框允许响应式缩放。但是在某些分辨率下,线条要么消失,要么模糊/变粗。我认为这与它在这些分辨率下像素不完美有关,但我可能是错的。没有添加额外的样式,除了shape-rendering:crispEdges;JSthis.y=d3.scale.linear().rangeRound([this.height,0]);this.yAxis=d3.svg.axis().scale(this.y).tickSize(this.width).tickValues([0,25,50,75,100]).ti